﻿using System;
using System.Web.UI.WebControls;
using BLL;
using Model;

public partial class ViewbyProduct_ViewPIM_PIMTestViewbyPIDDT : System.Web.UI.Page
{
    private string var_productTypeID
    {
        get { return ViewState["var_productTypeID"].ToString(); }
        set { ViewState["var_productTypeID"] = value; }
    }
    private DateTime var_starttime
    {
        get { return DateTime.Parse(ViewState["dt1"].ToString()); }
        set { ViewState["dt1"] = value; }
    }
    private DateTime var_stoptime
    {
        get { return DateTime.Parse(ViewState["dt2"].ToString()); }
        set { ViewState["dt2"] = value; }
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            BindCustoms();
            BindProductTypes();
        }
    }

    protected void BindCustoms()
    {
        Customer cust = new Customer();
        this.DropDownList1.DataSource = cust.LoadEntities();
        this.DropDownList1.DataTextField = "CustomerName";
        this.DropDownList1.DataValueField = "CustomerID";
        this.DropDownList1.DataBind();
    }

    protected void BindProductTypes()
    {
        ProductType pt = new ProductType();
        this.DropDownList2.DataSource = pt.GetProductTypesbyCustomerID(this.DropDownList1.SelectedValue);
        this.DropDownList2.DataTextField = "ProductTypeName";
        this.DropDownList2.DataValueField = "ProductTypeID";
        this.DropDownList2.DataBind();
    }

    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        BindProductTypes();
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        var_productTypeID = this.DropDownList2.SelectedValue;
        var_starttime = DateTime.Parse(this.TextBox3.Text + " 00:00:00");
        var_stoptime = DateTime.Parse(this.TextBox4.Text + " 00:00:00");
        BindPIMTest();
    }

    protected void BindPIMTest()
    {
        PIMTest pt = new PIMTest();
        this.GridView1.DataSource = pt.GetPIMTestbyPIDDT(var_productTypeID, var_starttime, var_stoptime);
        this.GridView1.DataBind(); 
        for (int i = 0; i < GridView1.Rows.Count; i++)
        {
            if (GridView1.Rows[i].Cells[11].Text == "Fail")
                GridView1.Rows[i].Cells[11].ForeColor = System.Drawing.Color.Red;
        }
    }

    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        this.GridView1.PageIndex = e.NewPageIndex;
        BindPIMTest();
    }

    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {
        Session["productSN"] = GridView1.SelectedDataKey["ProductSN"].ToString();
        Session["testTime"] = Convert.ToDateTime(GridView1.SelectedDataKey["TestTime"]);

        Response.Redirect("~/ViewTest/ViewYourself/PIMTestItemViewbySNDT.aspx");
    }
}
